home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FM Towns: Free Software Collection 7
/
FM Towns Free Software Collection 7.iso
/
data
/
nyan_e2
/
nyane2u2.plp
< prev
next >
Wrap
Text File
|
1993-11-30
|
7KB
|
262 lines
/******** バイナリメール,パティオにメッセージをアップする v1.04a用 ********/
%UpText{
%UpOne{
%UpTitle{getchar(IndexLine,32,80)};
%UpBody{
%fno @head(@getchar(IndexLine,4,3),{ });
send( FNameTop|{MES}|fno|{.TXT});
type({\n/POST\n});
loop({
wait(60,{TimeOut},
{題名 (漢字で20文字まで)\n:}
,{type(@UpTitle);
im({Yes})},
{宛先 (IDか同報グループ名又は FAX番号 改行で終了)\n:}
,{type(@getchar(IndexLine,32,80));
wait(30,{TimeOut},{\n:});
type({\n});
im({Yes})},
{宛先 (例 abc@cc.xyz.ac.jp 改行で終了)\n:}
,{type(@UpTitle);
wait(30,{TimeOut},{\n:});
type({\n});
im({Yes})},
{(1:OK 2:NG)\n:}
,{type({1\n});im({Yes})},
{◆登録されていません◆}
,{wait(30,{TimeOut},{\n:});
type({\n});
im({No})},
{処理)\n>} ,{type({\n});im({Yes})},
{\n-送信完了-}
,{cond:={了}; im({No})},
{\n-登録完了-}
,{cond:={了}; im({No})},
{\n修正 (1:修正する 2:しない)\n:}
,{type({2\n});im({Yes})},
{\n登録 (1:登録する 2:しない)\n:}
,{type({1\n});
cond:={了};
im({No})}
)
});
};
%UpPatio{
%ReqPatio @head(@getchar(IndexLine,14,8),{ });
%PatioData @tail(@body(patio,,{/}|ReqPatio),{,});
%PatioID @head(PatioData,{/});
%PatioPass @body(PatioData,{/});
%ResNum @getchar(IndexLine,26,5);
%uppatio1{
%Say{
type({SAY\n});
wait(30,{TimeOut},{\n:});
type({1\n});
};
case( ResNum ,
{ },{ Say;
},,{ type({RE }|ResNum|{\n});
});
loop({
wait(30,{TimeOut},
{/E)\n},{
im({No});
},{発言はありません◆\n},{
Say; im({Yes});
});
});
type({SUB:}|@UpTitle);
UpBody;
wait(130,{TimeOut},{\nPATIO(N)>},,
{\nPATIO(P)>});
case(cond,{了},{cond:={済}});
};
case(Where1={PATIO} && Where2=PatioID,{No},{
%PatioDir logd|{\}|@head(ReqPatio,{ });
GoHPpatio({PATIO},PatioID,PatioPass);
});
test(,, {\nPATIO(N)>},{uppatio1},
{\nPATIO(P)>},{uppatio1});
};
%GoProf{
type({GO PROFILE\n});
wait(20,{TimeOut},{E:終了)\n>});
Where1:={PROF};
type({SET PAGE OFF\n});
wait(30,{TimeOut},{\n>});
};
%UpProf{
case(Where1<>{PROF},{Yes},{GoProf});
test(,,{終了)\n>},{
type({2\n});
wait(30,{TimeOut},{行頭で/E)\n});
UpBody;
wait(60,{TimeOut},{終了)\n>});
case(cond,{了},{cond:={保}});
});
};
%UpBMail{
var sendid[10];
var exid[10];
%UpBMail2{
wait(30,{TimeOut},
{ファイル名 (改行のみで終了)\n:},
{type(FNameTop|{MES}|fno|{.TXT\n})});
wait(3600,{TimeOut},
{題名 (漢字で20文字まで)\n:},
{type(@head(@getchar(IndexLine,32,80),{\n})|
{\n})});
wait(30,{TimeOut},
{(1:OK 2:NG)\n:},
{type({1\n})});
wait(30,{TimeOut},
{宛先 (IDか同報グループ名 改行で終了)\n:},
{type(@getchar(IndexLine,14,8)|{\n})});
wait(60,{TimeOut},
{(1:OK 2:NG) \n:},
{type({1\n})});
case(@fopen(FNameTop|{MES}|fno|{.ID}),{Yes},{
loop({
exid:=@getchar(@fread,1,8);
case(exid<>{},
{Yes},{
wait(30,{TimeOut},
{(IDか同報グループ名 改行で終了)\n:},
{type(exid|{\n});
wait(30,{TimeOut},
{(1:OK 2:NG) \n:},
{type({1\n})},
{◆既に入力されています◆});
});
im({Yes});
},{No},{ im({No});
});
});
fclose;
delfile(FNameTop|{MES}|fno|{.ID});
});
wait(30,{TimeOut},
{宛先 (IDか同報グループ名 改行で終了)\n:},
{type({\n})});
wait(30,{TimeOut},
{送信(1:送信する 2:しない 3:期日指定)\n:},
{type({1\n})},
{送信 (1:送信する 2:しない)\n:},
{type({1\n})});
cond:={了}; im({No});
};
case(Smail={},
{Yes}, {case(Where1<>{MAIL},{Yes},{GoMail});
},{No},{case(Where1<>{FORUM} || Where2<>Smail,{Yes},{
%ForumDir logd|{\}|@head(Smail,{ });
GoForum(Smail);
});
});
test(,,{\nMAIL>},{
type({UPLOAD TYPE:BIN PROT:BPL\n});
UpBMail2;
wait(60,{TimeOut},{\nMAIL>});
case(cond,{了},{cond:={済}});
});
};
%UpFAX{
%UpMail2{
wait(30,{TimeOut},{/E)\n});
type({TO:}|@getchar(IndexLine,32,80));
/* case(@body(Handle,{,})={} && @tail(Handle,{/})<>{}
&& @body(Handle,,{/})={},{Yes},{
type({FROM:}|@tail(Handle,{/})|{\n});
});*/
wait(30,{TimeOut},{\n});
UpBody;
};
case(Where1<>{MAIL},{Yes},{GoMail});
test(,,{\nMAIL>},{
type({COM\n});
UpMail2;
wait(60,{TimeOut},{\nMAIL>});
case(cond,{了},{cond:={済}});
});
};
%GoWPNC{
case(Where4<>{NIF},{Yes},NIF);
type({GO WPNCSEND\n});
wait(20,{TimeOut},{E:終了)\n>});
Where1:={WPNC};
type({SET PAGE OFF\n});
wait(30,{TimeOut},{\n>})
};
%UpWPNC{
case(Where1<>{WPNC},{Yes},{GoWPNC});
test(,,{終了)\n>},{
type({1\n});
wait(30,{TimeOut},{行頭で/E)\n});
UpBody;
wait(60,{TimeOut},{終了)\n>});
case(cond,{了},{cond:={済}});
});
};
/********** Main Routine **********/
var cond[2];
%WriteIndex{
write(SaveFName,IndexLine);
im({Yes});
};
delfile(SaveFName);
fopen(IndexFName);
loop({ IndexLine:=@fread;
case(@getchar(IndexLine,1,2),
{予},{ %fno @head(@getchar(IndexLine,4,3),{ });
cond:={誤};
case(@filechk(FNameTop|{MES}|fno|{.TXT}),
{Yes},{ case(@getchar(IndexLine,8,5),
{Forum},{cond:={予};
},{HP },{cond:={予};
},{Mail },{cond:={予};
},{PCVAN},{cond:={予};
},{BMail},{UpBMail;
},{MyPrf},{UpProf;
},{Patio},{UpPatio;
},{WPNC },{UpWPNC;
},{FAX },{UpFAX;
},{Read },{cond:={予};
},,{display({Invelid Dest. dest:}|
@getchar(IndexLine,8,5)|{.\n});
});
IndexLine:=cond|
@getchar(IndexLine,3,80);
WriteIndex;
},{No},{
case(@getchar(IndexLine,8,5)={LIB } ||
@getchar(IndexLine,8,5)={Prof } ||
@getchar(IndexLine,8,5)={List } ||
@getchar(IndexLine,8,5)={RTN } ||
@getchar(IndexLine,8,5)={NEW },
{Yes},{WriteIndex;
},{No},{
display({UpFile not found. No.:}|
fno|{.\n});
WriteIndex;
});
});
},{説},{WriteIndex;
},{保},{WriteIndex;
},{覧},{WriteIndex;
},{済},{WriteIndex;
},{誤},{WriteIndex;
}, ,{im({No})
});
});
fclose;
copyfile(SaveFName,IndexFName);
};
footnote({ 文書のアップ処理をしています});
code({sjis});
case(@filechk(IndexFName),{Yes},{UpOne});
};
UpText;